首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏增长技术

    Android Camera2

    /** * Returns the capture session manager instance that modules use to store * temporary or final capture results. */ public CaptureSessionManager getCaptureSessionManager(); /** * Returns the memory manager which can be used to get informed about memory * status updates. */ public MemoryManager getMemoryManager(); /** * Returns the motion manager which senses when significant motion of the * camera should unlock a locked focus. */ public MotionManager getMotionManager(); /** * Returns the media saver instance. *

    * Deprecated. Use {@link #getCaptureSessionManager()} whenever possible. * This direct access to media saver will go away. */ @Deprecated public MediaSaver getMediaSaver(); /** * @return A listener to be informed by events interesting for remote * capture apps. Will never return null. */ public RemoteShutterListener getRemoteShutterListener(); /** * @return The settings manager which allows get/set of all app settings. */ public SettingsManager getSettingsManager();

    97710发布于 2018-09-06
  • 来自专栏写个呆萌

    Android Camera2

    image.png 从 Android 5.0 开始,Google 引入了一套全新的相机框架 Camera2android.hardware.camera2)并且废弃了旧的相机框架 Camera1 (android.hardware.Camera)。 本文是 Camera2 教程的开篇作,本章将介绍以下几个内容: 一些 Camera2 的重要概念 一些只有 Camera2 才支持的高级特性 一些从 Camera1 迁移到 Camera2 的建议 本章涉及的代码很少 截止到 Android P 为止,从低到高一共有 LEGACY、LIMITED、FULL 和 LEVEL_3 四个级别: LEGACY:向后兼容的级别,处于该级别的设备意味着它只支持 Camera1 13 结束语 本章到此结束,主要是介绍了 Camera2 的一些基础概念,让大家能够基本了解 Camera2 的工作流程和基础概念,并且知道使用 Camera2 能够做些什么。

    2.7K51发布于 2020-12-01
  • 来自专栏Android Camera开发

    Android Camera开发序列:Camera2 API 的简单描述和调用(预览、拍照、录像

    Android 5.1 以后,添加了Camera2 的API,能够满足更多操纵camera的场景。当然,相对应camera1的调用,也变的复杂一点。 CameraDevice -------------- 当前连接的摄像头对象; CaptureRequest -------------- camera数据的请求,比如预览、拍照、录像Android API文档(developer.android.google.cn/reference/a…)描述有下面这么一段话,我们可以看到MediaRecorder 的surface也是可以作为 那就很简单了,录像编码需要数据来源,而这个source就是通过MediaRecorder.getsurface,然后把该surface设置为target surface,那么MediaRecorder就可以拿到 ---- 本人从事Android Camera相关开发已有5年 目前在深圳上班 欢迎大家关注我的微信公众号“小驰笔记” 大家一起学习交流

    2.4K10发布于 2021-04-19
  • 来自专栏Android Camera开发

    Android Camera2 学习01_API 的简单描述和调用(预览、拍照、录像

    Android 5.1 以后,添加了Camera2 的API,能够满足更多控制camera的场景。当然,相对应camera1的调用,也变的复杂一点。 CameraDevice -------------- 当前连接的摄像头对象; CaptureRequest -------------- camera数据的请求,比如预览、拍照、录像等 } catch (CameraAccessException e) { e.printStackTrace(); } } 2.6录像 Android API文档(https://developer.android.google.cn/reference/android/hardware/camera2/package-summary 那就很简单了,录像编码需要数据来源,而这个source就是通过MediaRecorder.getsurface,然后把该surface设置为target surface,那么MediaRecorder就可以拿到

    2.1K30发布于 2021-04-30
  • 来自专栏雪月清的随笔

    Android Camera2详解

    Camera API2是Google从Android5.0开始推出的配合HAL3使用的一套新架构,相比于API1,对应用层开发者而言开放了更多的自主控制权,主要特性包括: 可以获取更多的帧(预览/拍照) Android设备和Camera是通过管道pipeline的概念将两者进行串联的,在一个会话Session过程中系统发送Request,摄像头返回MetaData进行来回交互;预览和拍照等数据的传递是通过 Camera2主要类 ? Camera2中要获取预览数据则需要额外配置一下。 首先需要通过ImageReader创建的Surface,在创建session的时候配置进去. 总结 Camera2的基本使用总结到这里,使用起来肯定是不如Camera1方便,不过能让应用层有更多的操作空间总是值得的,而且从Android9.0开始也不得不使用这套架构了 ?

    3K20发布于 2020-06-23
  • 来自专栏雪月清的随笔

    Android Camera2 Deferred Surface

    背景 在Android Camera2详解一文中,我们了解到使用Camera2 API启动相机预览将经历如下三个步骤,其中创建会话需要准备的预览surface一般来自SurfaceView,TextureView 【Android Camera2 API Deferred Surface实战】 https://deepinout.com/android-camera-official-documentation/ android-camera2-api/android-camera2-api-deferred-surface-practice.html ~~END~~

    1.1K20编辑于 2022-04-18
  • 来自专栏Android Camera开发

    Android Camera2 Focus Distance

    提问2 我想使用android camera2 API获取从对象到android设备的距离。 我已经在谷歌样本Camera2应用程序中添加了一个SeekBar,但我找不到实现手动对焦的方法。 我在camera2android中找到了手动对焦,但它在我的LG G4上无效。 I've searched through StackOverflow, Android Forums, Google and the source code of the native Android Lollipop Camera2 App and I've found nothing which explains this difference. focus at all via camera2, your device needs to have MANUAL_SENSOR in the android.request.availableCapabilities

    2.2K10编辑于 2022-12-20
  • 来自专栏Android Camera开发

    Android Camera2 获取RAW数据

    这边文章主要记录下在Android系统上,如何通过Camera2 API去拿到RAW数据,也是当个备忘。 平时我们拿实时预览数据,更多的是获取yuv数据。 相关实现代码,google已经给出了官方的demo 本文介绍的内容也是基于官方demo来展开~ 如果大家了解或者使用过Camera2获取实时yuv或者拍照jpeg数据,那获取raw,其实流程上都是一样 Camera2上我们需要拿到camera的数据,都是通过ImagerReader来获取。

    1K20编辑于 2023-10-16
  • 来自专栏RTSP/RTMP直播相关

    如何实现RTMP推送Android Camera2数据

    Camera2简介 在Google 推出Android 5.0的时候, Android Camera API 版本升级到了API2(android.hardware.camera2), 之前使用的API1 在API架构方面, Camera2和之前的Camera有很大区别, APP和底层Camera之前可以想象成用管道方式连接, 如下图: ​ 这里引用了管道的概念将安卓设备和摄像头之间联通起来,系统向摄像头发送 Camera2 API调用基础流程: 通过context.getSystemService(Context.CAMERA_SERVICE) 获取CameraManager; 调用CameraManager ; 通过CameraDevice.createCaptureSession() 在回调中获取CameraCaptureSession; 构建CaptureRequest, 有三种模式可选 预览/拍照/录像 Camera2介绍,和RTMP调用流程,感兴趣的可以自行学习。

    1.8K00发布于 2020-04-05
  • 来自专栏RTMP推送

    Android摄像头采集选Camera1还是Camera2

    ​Camera1还是Camera2?好多开发者纠结,Android平台采集摄像头,到底是用Camera1还是Camera2?实际上,Camera1和Camera2分别对应相机API1和相机API2。 广泛的应用场景相机应用开发:Camera2 API提供了丰富的相机控制接口,可以用于开发各种相机应用,如拍照、录像、实时滤镜等。 如何使用Camera2进行相机操作使用AndroidCamera2 API来进行相机操作,包括预览、拍照等功能,是一个相对复杂但功能强大的过程。 "/> <uses-feature android:name="android.hardware.camera" android:required="true"/> <uses-feature android 我们在做Android平台RTMP推送、轻量级RTSP服务、实时录像和GB28181设备对接模块的时候,都需要用到摄像头采集,早期,我们提供了Camera1的采集demo,后面碎渣Camera2的优势越来越明显

    92210编辑于 2024-08-08
  • 来自专栏RTMP推送

    Android音视频开发:基于 Camera2 API 实现RTMP推流、RTSP服务与录像一体化方案

    真正的挑战在于:如何在资源受限的 Android 设备上,构建一个既能“对外”进行 RTMP 直播、又能“对内”提供低延迟 RTSP 分发,同时还能完成“本地”高保真录像的『全功能媒体节点』? 本文将深入源码,结合 MainActivity.java 及核心辅助类,剖析如何利用 Android Camera2 API 的高效采集能力,配合 大牛直播SDK (SmartPublisher) 的多路分发架构 Camera2 API 的高效采集与YUV处理Camera2 API 相比旧版 Camera API 提供了更强大的控制力,但也更为复杂。 但该 SDK 允许 Android 设备变身为 RTSP 服务器。 sleep_ms(update_interval); }}4.3 实时录像与断网重连 录像:stream_publisher_.StartRecorder() 即可开启本地录像

    25600编辑于 2025-12-07
  • 来自专栏Android Camera开发

    Android 9.0 对后台程序使用Mic、Camera做了限制?

    01、发现问题 在android9.0 上修改原生的SnapdragonCamera 应用,需要修改成能支持后台录像,也就是Activity处于OnPause状态的时候,还是在录像(现在市面上支持后台录像的应用 ,基本都是在后台service中去开启录像,这个就不在本文的讨论场景了)。 notifyError(hardware::camera2::ICameraDeviceCallbacks::ERROR_CAMERA_DISABLED, resultExtras); disconnect = NULL) { int32_t api1ErrorCode = CAMERA_ERROR_RELEASED; if (errorCode == hardware::camera2 自定义property属性ro.backgroundrecord.enable ,然后根据property属性值来判断是否需要屏蔽Android9.0的这个限制。

    41610编辑于 2024-12-05
  • 来自专栏Android知识点总结

    Android多媒体之Camera2的相关操作

    零、前言 Android 5.0+ (API 21) Camera过时.png ---->[源码里让我们用camera2] * @deprecated We recommend using the new {@link android.hardware.camera2} API for new applications. 这里的camera2可不是一个类哦 一、打开相机并预览 1.早听闻camera2很复杂,没想到这么复杂,我都有点小hold不住 视图布局和上一篇一样,只是实现变了而已 1.打开相机:Camera2Activity at android.media.ImageReader.acquireNextImage(ImageReader.java:501) at com.toly1994.video.cameral2 ", e); } finally { mCameraOpenCloseLock.release(); } } 五、录像 视频录制.png 1.辅助类 有个小bug

    3.3K50发布于 2019-02-25
  • 来自专栏雪月清的随笔

    Android Camera2 实现触摸对焦功能(Touch to Focus)

    之前在 Android Camera2 简介 这篇文章中简单介绍了下 Camera2 中 AF/AE 对焦区域如何进行设置,之前是通过手动计算对应关系实现的,但这种方式需要考虑到前后摄的区别,前摄和后摄坐标映射有区别 View坐标系,绿色为 Camera 坐标系,旧的Camera底层坐标范围大小是固定的,宽高都为2000,而Camera2中的大小要根据查询出来的 SENSOR_INFO_ACTIVE_ARRAY_SIZE 来进行确定 使用Matrix进行坐标映射 Camera API 1 关于API 1的坐标映射, 可以参考Android源码中Camera代码, 路径: packages/apps/Camera2/src 得到有映射关系的Matrix后,坐标转换只需调用mapRect(result, source)即可 Camera API 2 上面 API 1 的代码是不能直接用在 API 2中的, 主要原因是 Camera2 ; import android.graphics.Rect; import android.graphics.RectF; import android.hardware.camera2.CameraCharacteristics

    3.9K20发布于 2021-09-22
  • 来自专栏雪月清的随笔

    Android Camera2中如何获取预览YUV数据

    那么在Camera2的架构中,我们要如何获取NV21或者YV12格式的预览数据呢? 在之前的文章Android Camera2详解中描述到,要获取每一帧的预览数据,我们需要ImageReader这个类的帮助: val imageReader = ImageReader(width, height { throw new IllegalArgumentException( "NV21 format is not supported"); } NV21 查看文档关于NV21的描述,发现在Camera2

    7.2K30发布于 2020-06-23
  • 来自专栏Android Camera开发

    全网首发:Android Camera2 集成人脸识别算法

    这可能是全网唯一一篇介绍Android Camera2接口集成人脸算法的文章了~ 写在前面: 说起人脸识别,相信大家都不会感到陌生,在我们平时的工作生活中,人脸打卡、刷脸支付等等已经是应用的非常广泛了, 这篇文章将针对下面几点展开介绍: 一、Android平台人脸识别流程图 二、ArcSoft人脸识别算法sdk下载 三、Camera2 API 集成 ArcSoft人脸识别算法 一、Android平台人脸识别流程图 介绍完了官方的demo,那接下来我们看下采用Android Camera2 的api,如何去集成arcsoft的人脸识别算法呢。 下面来讲解下代码实现的主要步骤: (不熟悉Camera2接口的同学,建议先找一篇关于Camera2 API的文章先了解下,关于Camera2,我自己前面也写过算是比较详细的文章介绍,也欢迎大家阅读) i 不过Android 目前已经不再对Camera旧的架构进行维护,而且目前主流的手机采用的基本上也都是Camera2的接口。所以我们还是非常有必要熟悉掌握Camera2的各种使用。

    1.5K10发布于 2021-04-30
  • 来自专栏达达前端

    2016android在线测试15-图像 camera2

    Create a new instance of android.media.MediaRecorder.

    57520编辑于 2022-04-28
  • 来自专栏音视频直播技术专家

    音视频直播技术--Android视频采集(Camera2)

    Camera2 介绍 今天为大家介绍一下如何在 Android 上进行视频采集。在 Android 系统下有两套 API 可以进行视频采集,它们是 Camera 和 Camera2 。 Camera是以前老的 API ,从 Android 5.0(21)之后就已经放弃了。我今天主要给大家介绍一下如何使用 Camera2 进行视频的采集。 原码可以在这里获取 Camera2 整体工作结构 Camera2结构图 Camera Device:代表一个摄像头,在一部手机上有可能有多个摄像头,如前置摄像头,后置摄像头等。 Android Device:可以把它想象成我们自己的APP应用。 使用 Camera2 基本流程 创建一个专门的线程用于Camera的具体操作。Android系统已经为我们提供了 HandlerThread类,以方便我们创建 Hander 类型的线程。

    2.4K20发布于 2020-04-02
  • 来自专栏达达前端

    2016级android在线测试15-图像 camera2

    ImageView类用于显示各种图像,例如:图标、图片,下面对于ImageView类加载图片方法的描述错误的是() http://android.xsoftlab.net/reference/android /widget/ImageView.html http://android.xsoftlab.net/reference/android/widget/ImageView.ScaleType.html Android 5.0(API21)之后,android.hardware.Camera被废弃(简称Camera1),的Camera2主要涉及的API有哪些? http://android.xsoftlab.net/reference/android/hardware/camera2/package-summary.html 您的回答为: CameraManager 使用Camera2进行拍照的套路包括哪些步骤?

    80230编辑于 2022-04-29
  • 来自专栏Android Camera开发

    全网首发:Android Camera2 集成人脸识别算法

    这可能是全网唯一一篇介绍Android Camera2接口集成人脸算法的文章了~ 写在前面: 说起人脸识别,相信大家都不会感到陌生,在我们平时的工作生活中,人脸打卡、刷脸支付等等已经是应用的非常广泛了 这篇文章将针对下面几点展开介绍: 一、Android平台人脸识别程图 二、ArcSoft人脸识别算法sdk下载 三、Camera2 API 集成 ArcSoft人脸识别算法 一、Android平台人脸识别流程图 介绍完了官方的demo,那接下来我们看下采用Android Camera2 的api,如何去集成arcsoft的人脸识别算法呢。 我们先来看下我自己写的demo效果图: 下面来讲解下代码实现的主要步骤: (不熟悉Camera2接口的同学,建议先找一篇关于Camera2 API的文章先了解下,关于Camera2,我自己前面也写过算是比较详细的文章介绍 不过Android 目前已经不再对Camera旧的架构进行维护,而且目前主流的手机采用的基本上也都是Camera2的接口。所以我们还是非常有必要熟悉掌握Camera2的各种使用。

    2.4K31发布于 2021-04-19
领券